/**
 * 用户新建页面交互逻辑
 * 负责处理用户创建表单的提交和数据验证
 */
import { createDataItem } from '../../js/api.js';

/**
 * 初始化表单提交事件监听
 */
function initFormSubmit() {
    const createForm = document.getElementById('createForm');
    createForm.addEventListener('submit', async (e) => {
        e.preventDefault();

        // 获取表单数据
        const formData = {
            username: document.getElementById('username').value.trim(),
            email: document.getElementById('email').value.trim(),
            password: document.getElementById('password').value.trim(),
            role: document.getElementById('role').value,
            phone: document.getElementById('phone').value.trim() || null
        };

        // 表单验证
        if (!formData.username) {
            alert('请输入用户名');
            return;
        }

        if (!formData.email) {
            alert('请输入邮箱');
            return;
        }

        // 简单邮箱格式验证
        const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
        if (!emailRegex.test(formData.email)) {
            alert('请输入有效的邮箱地址');
            return;
        }

        if (!formData.password) {
            alert('请输入密码');
            return;
        }

        if (formData.password.length < 6) {
            alert('密码长度不能少于6个字符');
            return;
        }

        try {
            // 调用API创建用户
            const success = await createDataItem(formData);
            if (success) {
                alert('用户创建成功！');
                window.location.href = 'list.html'; // 跳转到列表页
            }
        } catch (error) {
            console.error('创建用户失败:', error);
            alert('创建用户失败: ' + (error.message || '未知错误'));
        }
    });
}

// 页面加载完成后初始化
window.addEventListener('DOMContentLoaded', initFormSubmit);